|
From: Frederic D. <de...@us...> - 2004-06-11 16:36:39
|
Update of /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/test/rubar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3396/src/org/fudaa/dodico/test/rubar Added Files: SECT24.PAR SECT24.CIN TestJPARReader.java TestJDATReader.java SECT24.DAT Log Message: Rubar --- NEW FILE: SECT24.CIN --- 0.000 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 9999.9902 [...3150 lines suppressed...] 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 --- NEW FILE: TestJPARReader.java --- /** * @creation 8 juin 2004 * @modification $Date: 2004/06/11 16:36:26 $ * @license GNU General Public License 2 * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne * @mail fud...@li... */ package org.fudaa.dodico.test.rubar; import java.util.Arrays; import org.fudaa.dodico.dico.DicoCasAbstract; import org.fudaa.dodico.dico.DicoCasFileFormatVersion; import org.fudaa.dodico.dico.DicoDataType; import org.fudaa.dodico.dico.DicoEntite; import org.fudaa.dodico.dico.DicoEntiteComparator; import org.fudaa.dodico.dico.DicoModelAbstract; import org.fudaa.dodico.dico.DicoParams; import org.fudaa.dodico.fichiers.FileOperationSynthese; import org.fudaa.dodico.rubar.io.RubarPARFileFormat; import org.fudaa.dodico.rubar.io.RubarPARReader; import org.fudaa.dodico.test.TestIO; /** * @author Fred Deniger * @version $Id: TestJPARReader.java,v 1.1 2004/06/11 16:36:26 deniger Exp $ */ public class TestJPARReader extends TestIO { /** * SECT24.DAT */ public TestJPARReader() { super("SECT24.PAR"); } /** * Test la lecture du fichier SECT24.DAT */ public void testReader() { RubarPARFileFormat.PARVersion v = (RubarPARFileFormat.PARVersion) RubarPARFileFormat.INSTANCE() .getLastVersionInstance(); RubarPARReader r = new RubarPARReader(v); r.setFile(fic_); FileOperationSynthese s = r.read(); if (s.containsMessages()) { s.printAnalyze(); } DicoParams p = (DicoParams) s.getSource(); DicoModelAbstract dico = p.getDicoFileFormatVersion().getDico(); int nb = dico.getEntiteNombre(); assertEquals(25, nb); DicoEntite[] d = new DicoEntite[25]; dico.getEntites().toArray(d); Arrays.sort(d, new DicoEntiteComparator.Index()); String[] t = new String[2]; int idx=0; t[0] = "Reprise de calcul"; t[1] = "Computation continued"; DicoEntite ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0", p.getValue(ent)); assertFalse(DicoDataType.Binaire.getValue(p.getValue(ent))); t[0] = "Précision sur les hauteurs"; t[1] = "Precision for elevation"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.100E-09", p.getValue(ent)); t[0] = "Accélération de la pesanteur"; t[1] = "Gravity acceleration"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("9.810", p.getValue(ent)); t[0] = "Temps début du calcul"; t[1] = "Computation start time"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.000", p.getValue(ent)); t[0] = "Temps fin calcul"; t[1] = "Computation end time"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("7200.", p.getValue(ent)); t[0] = "Valeur pas de temps initial"; t[1] = "Initial time step"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.05", p.getValue(ent)); t[0] = "Calcul à nombre de Courant constant"; t[1] = "Computation with constant \"Courant\" number"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0", p.getValue(ent)); t[0] = "Valeur du nombre Courant"; t[1] = "\"Courant\" value"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("50.", p.getValue(ent)); t[0] = "Schéma calcul"; t[1] = "Computation scheme"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("2", p.getValue(ent)); t[0] = "Conditions limites variables dans le temps"; t[1] = "Boundary conditions depending on time"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("1", p.getValue(ent)); t[0] = "Correction de Van Leer"; t[1] = "Van Leer correction"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.600", p.getValue(ent)); t[0] = "Ouvrages"; t[1] = "Works"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("1", p.getValue(ent)); t[0] = "Définition du frottement"; t[1] = "Friction definition"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("1", p.getValue(ent)); t[0] = "Pas de temps de sauvegarde"; t[1] = "Save time step"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("300.", p.getValue(ent)); t[0] = "fichier hyrdrogrammes (TRC)"; t[1] = "File hydrograph (TRC)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("1", p.getValue(ent)); t[0] = "Edition maillage (EDM)"; t[1] = "Grid Edition (EDM)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0", p.getValue(ent)); t[0] = "Edition des conditions limites(ECL)"; t[1] = "Boundary conditions edition (ECL)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0", p.getValue(ent)); t[0] = "Edition des conditions initiales (ECI)"; t[1] = "Initial condition edition (ECI)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0", p.getValue(ent)); t[0] = "Edition des frottements de fond (EFR)"; t[1] = "Bottom friction edition (EFR)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0", p.getValue(ent)); t[0] = "Valeurs aux arêtes entrantes,sortantes et sur les ouvrages (OUT)"; t[1] = "Values for inflowing/outflowing edges et for works (OUT)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("1", p.getValue(ent)); t[0] = "Maxima des résultats depuis le début du calcul (ENV)"; t[1] = "Maximal values from the computation beginning (ENV)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("1", p.getValue(ent)); t[0] = "Constante de viscosité (ou diffusion)"; t[1] = "Viscosity constante (or diffusion)"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.00", p.getValue(ent)); t[0] = "Coefficient de frottement à la paroi"; t[1] = "Friction coefficient for wall"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.00", p.getValue(ent)); t[0] = "Vitesse du vent selon X"; t[1] = "Wind velocity along X"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.00", p.getValue(ent)); t[0] = "Vitesse du vent selon Y"; t[1] = "Wind velocity along Y"; ent = d[idx++]; assertEquals(ent, v.getEntiteFor(t)); assertEquals("0.00", p.getValue(ent)); } } --- NEW FILE: SECT24.DAT --- 6375 4 1 2 3 4 4 1 3 4 2 4 0 0 2 24 4 3 5 6 7 4 2 4 6 5 4 1 0 3 25 4 6 8 9 10 4 5 6 8 7 4 2 0 4 26 4 9 11 12 13 4 7 8 10 9 4 3 0 5 27 4 12 14 15 16 4 9 10 12 11 4 4 0 6 28 4 15 17 18 19 4 11 12 14 13 4 5 0 7 29 [...46778 lines suppressed...] 171.241 171.129 171.017 170.905 171.090 171.275 171.840 173.098 174.355 175.612 177.073 178.759 180.759 180.284 179.822 179.359 178.897 178.434 177.971 177.509 177.046 176.584 176.107 175.620 175.179 174.742 174.305 173.868 173.431 172.994 172.557 172.120 171.683 168.683 168.683 171.683 171.589 171.494 171.400 171.306 171.212 171.118 171.024 170.926 170.802 170.678 170.553 170.739 170.925 171.509 172.815 174.121 175.427 176.946 178.640 180.569 180.192 179.718 179.243 178.769 178.294 177.820 177.346 176.871 176.397 175.913 175.422 174.979 174.540 174.100 173.660 173.220 172.781 172.341 171.901 171.461 168.461 168.461 171.461 171.357 171.252 171.147 171.042 170.938 170.833 170.728 170.620 170.484 170.348 170.212 170.399 170.586 171.186 172.540 173.894 175.247 176.823 178.525 180.384 180.093 179.606 179.119 178.632 178.145 177.657 177.170 176.683 176.196 175.704 175.209 174.765 174.322 173.879 173.437 172.994 172.551 172.109 171.666 171.223 168.223 168.223 171.223 171.107 170.991 170.875 170.759 170.643 170.527 170.411 170.292 170.143 169.994 169.845 170.033 170.221 170.840 172.245 173.650 175.055 176.691 178.400 180.186 180.000 179.501 179.002 178.503 178.004 177.505 177.005 176.506 176.007 175.508 175.009 174.563 174.117 173.672 173.227 172.781 172.336 171.891 171.445 171.000 168.000 168.000 171.000 170.873 170.747 170.620 170.493 170.366 170.240 170.113 169.982 169.822 169.661 169.500 169.689 169.878 170.515 171.968 173.421 174.874 176.567 178.283 180.000 0 --- NEW FILE: TestJDATReader.java --- /** * @creation 8 juin 2004 * @modification $Date: 2004/06/11 16:36:27 $ * @license GNU General Public License 2 * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne * @mail fud...@li... */ package org.fudaa.dodico.test.rubar; import org.fudaa.dodico.ef.EfElementVolume; import org.fudaa.dodico.ef.EfGridVolume; import org.fudaa.dodico.ef.EfNode; import org.fudaa.dodico.fichiers.FileOperationSynthese; import org.fudaa.dodico.h2d.rubar.H2dRubarArete; import org.fudaa.dodico.h2d.rubar.H2dRubarGrid; import org.fudaa.dodico.h2d.rubar.H2dRubarGridAreteSource; import org.fudaa.dodico.rubar.io.RubarDATFileFormat; import org.fudaa.dodico.rubar.io.RubarDATReader; import org.fudaa.dodico.test.TestIO; /** * @author Fred Deniger * @version $Id: TestJDATReader.java,v 1.1 2004/06/11 16:36:27 deniger Exp $ */ public class TestJDATReader extends TestIO { /** * SECT24.DAT */ public TestJDATReader() { super("SECT24.DAT"); } /** * Test la lecture du fichier SECT24.DAT */ public void testReader(){ RubarDATReader r=new RubarDATReader((RubarDATFileFormat.DATVersion)RubarDATFileFormat.INSTANCE().getLastVersionInstance()); r.setFile(fic_); FileOperationSynthese s=r.read(); if(s.containsMessages()){ s.printAnalyze(); } H2dRubarGridAreteSource gridArete=(H2dRubarGridAreteSource)s.getSource(); assertNotNull(gridArete); EfGridVolume gv=gridArete.getRubarGrid(); assertNotNull(gv); assertEquals(6375,gv.getEltNb()); EfElementVolume v=gv.getEltVolume(0); assertEquals(4,v.getPtNb()); assertEquals(0,v.getPtIndex(0)); assertEquals(2,v.getPtIndex(1)); assertEquals(3,v.getPtIndex(2)); assertEquals(1,v.getPtIndex(3)); assertEquals(4,v.getNbAretes()); assertEquals(0,v.getIdxArete(0)); assertEquals(1,v.getIdxArete(1)); assertEquals(2,v.getIdxArete(2)); assertEquals(3,v.getIdxArete(3)); int[] eltVoison=gridArete.elementsVoisinsParElement()[0]; assertNotNull(eltVoison); assertEquals(4,eltVoison.length); assertEquals(-1,eltVoison[0]); assertEquals(-1,eltVoison[1]); assertEquals(1,eltVoison[2]); assertEquals(23,eltVoison[3]); //99 v=gv.getEltVolume(100); assertEquals(4,v.getPtNb()); assertEquals(104,v.getPtIndex(0)); assertEquals(105,v.getPtIndex(1)); assertEquals(129,v.getPtIndex(2)); assertEquals(128,v.getPtIndex(3)); assertEquals(4,v.getNbAretes()); assertEquals(182,v.getIdxArete(0)); assertEquals(228,v.getIdxArete(1)); assertEquals(229,v.getIdxArete(2)); assertEquals(226,v.getIdxArete(3)); eltVoison=gridArete.elementsVoisinsParElement()[100]; assertNotNull(eltVoison); assertEquals(4,eltVoison.length); assertEquals(77,eltVoison[0]); assertEquals(101,eltVoison[1]); assertEquals(123,eltVoison[2]); assertEquals(99,eltVoison[3]); //LES ARETES H2dRubarGrid g=gridArete.getRubarGrid(); assertEquals(12869,g.getNbAretes()); H2dRubarArete ar=g.getRubarArete(0); assertEquals(0,ar.getPt1Idx()); assertEquals(2,ar.getPt2Idx()); assertEquals(2,ar.getType().getRubarIdx()); eltVoison=gridArete.elementsVoisinsParArete()[0]; assertEquals(2,eltVoison.length); assertEquals(-1,eltVoison[0]); assertEquals(0,eltVoison[1]); ar=g.getRubarArete(12865); assertEquals(null,ar.getType()); ar=g.getRubarArete(12868); assertEquals(6493,ar.getPt1Idx()); assertEquals(6494,ar.getPt2Idx()); assertEquals(2,ar.getType().getRubarIdx()); eltVoison=gridArete.elementsVoisinsParArete()[12868]; assertEquals(2,eltVoison.length); assertEquals(6374,eltVoison[0]); assertEquals(-1,eltVoison[1]); //LES POINTS assertEquals(6495,gv.getPtsNb()); EfNode n=gv.getPt(0); assertDoubleEquals(811784.0,n.getX()); assertDoubleEquals(284760.0,n.getY()); assertDoubleEquals(235,n.getZ()); n=gv.getPt(6494); assertDoubleEquals(808623.3,n.getX()); assertDoubleEquals(286799.2,n.getY()); assertDoubleEquals(180,n.getZ()); } } --- NEW FILE: SECT24.PAR --- REPRISE (0/1) 1=REPR :0 VALEUR DE PARAY : 0.100E-09 VALEUR DE LA GRAVITE : 9.810 TEMPS DEBUT DE CALCUL= : 0.000 TEMPS FIN DE CALCUL= : 7200. VALEUR PAS DE TEMPS INITIAL : 0.05 CALCUL A CFL CONST OUI(1)/0 :0 VALEUR DE CFL : 50. SCHEMA CALCUL G(0)/V1(1)/V2(2) :2 CONDITIONS LIMITES F(T) OUI(1)/0 :1 CORRECTION VAN LEER : 0.600 OUVRAGES OUI(1)/0 :1 STRICKLER(1)/CHEZY(0) :1 PAS DE TEMPS DE STOCKAGE : 300. RESULTATS POUR HYDROGRAMMES (0/1):1 EDITION MAILLAGE (0/1) :0 EDITION COND LIM (0/1) :0 EDITION COND INIT (0/1) :0 EDITION FROTTEMENTS (0/1) :0 EDITION RESULTAT AUX LIMITES(0/1):1 EDITION ENVELOPPES (0/1) :1 CONSTANTE DE VISCOSITE : 0.00 FROTTEMENT A LA PAROI(CHEZY) : 0.00 VITESSE DU VENT SUR OX : 0.00 VITESSE DU VENT SUR OY : 0.00 |