From: <opa...@us...> - 2008-08-07 14:41:29
|
Revision: 3729 http://fudaa.svn.sourceforge.net/fudaa/?rev=3729&view=rev Author: opasteur Date: 2008-08-07 14:41:35 +0000 (Thu, 07 Aug 2008) Log Message: ----------- deplacement fudaa.hydraulique1d.metier vers dodico.hydraulique1d.metier Modified Paths: -------------- trunk/fudaa_devel/dodico/idl/code/mascaret.idl trunk/fudaa_devel/dodico/src/org/fudaa/dodico/mascaret/DParametresMascaret.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/mascaret/MascaretClient.java Added Paths: ----------- trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/ trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/DeserializerHandlerVersion04.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierCondLimiteImposee.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierCritereArret.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierFormatFichier.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierLimiteCalcule.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierMethodeMaillage.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierOptionStockage.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierRegime.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierSensDebitLiaison.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierTypeCompositionLits.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierTypeFrottement.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierTypeNombre.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/EnumMetierUnite.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/Identifieur.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierBarragePrincipal.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierBief.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierCalculHydraulique1d.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierCasier.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierConditionsInitiales.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierDefinitionSections.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierDefinitionSectionsParSections.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierDefinitionSectionsParSeries.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierDefinitionSectionsParSeriesUnitaire.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierDescriptionVariable.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierDonneesHydrauliques.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierEtude1d.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierExtremite.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierHydraulique1d.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierInformationTemps.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierLaisse.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierLiaison.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierLigneEauInitiale.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierLigneEauPoint.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierLimite.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierLoiHydraulique.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierMaillage.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierNoeud.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierOptionsListing.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierOptionsListingTracer.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresGeneraux.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresGenerauxCasier.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresReprise.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresResultats.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresStockage.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresTailleMaxFichier.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierParametresTemporels.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierProfil.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierReseau.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierResultatsBief.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierResultatsBiefPasTemps.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierResultatsGeneraux.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierResultatsTemporelSpatial.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierResultatsTemporelSpatialBief.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierSectionCalculee.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierSectionCalculeePasTemps.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierSingularite.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierSite.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierZone.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierZoneFrottement.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/MetierZonePlanimetrage.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/SMetierIdentifieur.java trunk/fudaa_devel/dodico/src/org/fudaa/dodico/hydraulique1d/metier/SMetierIndiceZoneStockage.java Modified: trunk/fudaa_devel/dodico/idl/code/mascaret.idl =================================================================== --- trunk/fudaa_devel/dodico/idl/code/mascaret.idl 2008-08-07 14:36:55 UTC (rev 3728) +++ trunk/fudaa_devel/dodico/idl/code/mascaret.idl 2008-08-07 14:41:35 UTC (rev 3729) @@ -1,1123 +1,1126 @@ -/* - * @file mascaret.idl - * @creation 2000-04-11 - * @modification $Date: 2008-02-29 16:47:08 $ - * @license GNU General Public License 2 - * @copyright (c)1998-2001 EDF/LNHE - * @mail de...@fu... - */ - -#ifndef _MASCARET_IDL -#define _MASCARET_IDL - - -#include "general/calcul.idl" - -/** - * @version $Revision: 1.25 $ $Date: 2008-02-29 16:47:08 $ by $Author: opasteur $ - * @author Jean-Marc Lacombe - */ -module mascaret { - - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+ ENTREE +-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - - //-----------RUBRIQUE PARAMETRES GENERAUX------------------------- - // Parametres bibliotheques - struct SParametresBiblio { - chaine bibliotheques; // bibliotheques *.a utilisees - }; - - // Parametres g\xE9n\xE9raux - struct SParametresGen { - entier versionCode; // version du code - entier code; // noyau code : 1->SARAP, 2->REZO, 3->MASCARET - // Si 3 alors Froude limite pour les condLim, pas de temps variable, - // nombre courant souhait\xE9, frottement - chaine fichMotsCles; // nom du fichier des mots cl\xE9s (fichier .cas) - chaine dictionaire; // nom du fichier dictionnaire - chaine progPrincipal; // nom de fichier du programme principale fortran - booleen sauveModele; // sauvegarde du modele - chaine fichSauvModele; // nom du fichier de sauvegarde du mod\xE8le (temporaire) - booleen validationCode; // calcul pour validation du code - entier typeValidation; // type de calcul de validation effectue - booleen presenceCasiers; // presence de casiers - SParametresBiblio bibliotheques; // bibliotheques *.a utilisees - }; - //-----------FIN RUBRIQUE PARAMETRES GENERAUX------------------------- - - //-----------RUBRIQUE MODELISATION PHYSIQUE------------------------- - - // Parametres debordement progressif - struct SParametresDebordProgr { - booleen litMajeur; // debordement progressif lit majeur - booleen zoneStock; // debordement progressif zones de stockage - }; - - // Param\xE8tres mod\xE9lisation physique - struct SParametresModelPhy { - booleen perteChargeConf; // pertes de charge automatique aux confluents - entier compositionLits; // composition des lits : 1->DEBORD, 2->FOND/BERGE - booleen conservFrotVertical; // conservation du frottement sur les parois verticales - reel elevCoteArrivFront; // elevation de cote arrivee du front - booleen interpolLinStrickler; // interpolation lin\xE9aire des strickler - SParametresDebordProgr debordement; // les parametres du debordement progressif - }; - //-----------FIN RUBRIQUE MODELISATION PHYSIQUE------------------------- - - //-----------RUBRIQUE PARAMETRES NUMERIQUES------------------------- - // Param\xE8tres num\xE9riques utilis\xE9 par casier - struct SParametresNumCasier { - reel coefImplicationSystemeCasiers; // coefficient d'implicitation du systeme des casiers - reel coefImplicationDansCouplage; // coefficient d'implicitation dans le couplage - entier nbMaxIterationDansCouplage; // nombre maximum d'iteration dans le couplage - }; - - // Param\xE8tres num\xE9rique - struct SParametresNum { - booleen calcOndeSubmersion; // calcul d'une onde de submersion => "BARRAGE PRINCIPAL" - reel froudeLimCondLim; // Froude limite pour les conditions limites si code Mascaret - booleen traitImplicitFrot; // traitement implicite du frottement - reel hauteurEauMini; // hauteur d'eau minimale - booleen implicitNoyauTrans; // implicitation noyau transcritique - booleen optimisNoyauTrans; // optimisation noyau transcritique - booleen perteChargeAutoElargissement; // pertes de charge automatique noyau transcritique - SParametresNumCasier parametresNumeriqueCasier; // param\xE8tres num\xE9riques utilis\xE9 par casier - }; - //-----------FIN RUBRIQUE PARAMETRES NUMERIQUES------------------------- - - //-----------RUBRIQUE PARAMETRES TEMPORELS------------------------- - // Param\xE8tres temporels - struct SParametresTemp { - reel pasTemps; // pas de temps - reel tempsInit; // temps initial - entier critereArret; // crit\xE8re d'arret du calcul :1-> temps max, 2-> nb temps max - entier nbPasTemps; // nombre de pas de temps Si critereArret==2 - reel tempsMax; // temps maximum Si critereArret==1 - booleen pasTempsVar; // pas de temps variable suivant nombre de courant - reel nbCourant; // nombre de courant souhait\xE9 - reel coteMax; // cote max de controle - reel abscisseControle; // abscisse du point de controle - entier biefControle; // numero de bief du point de controle - }; - //-----------FIN RUBRIQUE PARAMETRES TEMPORELS------------------------- - - //-----------RUBRIQUE GEOMETRIE-RESEAU------------------------- - // Param\xE8tres geometrie - struct SParametresGeom { - chaine fichier; // fichier de geometrie - entier format; // format du fichier geometrie : 1->lidoV2.2, 2->mascaretV5 - booleen profilsAbscAbsolu; // profils en abscisse absolue - }; - - // Param\xE8tres Branches - struct SParametresBranches { - entier nb; // nombre de branches - ventier numeros; // numeros de branche - vreel abscDebut; // abscisse debut - vreel abscFin; // abscisse fin - ventier numExtremDebut; // numero de l'extremite de debut - ventier numExtremFin; // numero de l'extremite de fin - }; - - // Description d'un noeud - struct SNoeud { - ventier num; // numeros des extremites corespondant a un noeud - }; - typedef sequence <SNoeud> VSNoeud; - - // Param\xE8tres noeuds - struct SParametresNoeuds { - entier nb; // nombre de noeuds - VSNoeud noeuds; // les noeuds - }; - - // Param\xE8tres extremites libres - struct SParametresExtrLibres { - entier nb; // nombre d'extremites libres - ventier num; // numeros d'extremite libre - ventier numExtrem; // numeros d'extremite 2 - vchaine Nom; // nom de l'extremite - ventier typeCond; // type condition : 1-> debit impose, 2-> cote impose, 3-> loi Z(Q), 4-> loi Q(Z), - // 5-> regulation : Zav(Qam), 6-> sortie libre, 7-> Hauteur normale - ventier numLoi; // numero de la loi - }; - - // Param\xE8tres geometrie-reseau - struct SParametresGeoReseau { - SParametresGeom geometrie; // nom fichier et type du fichier geometrie - SParametresBranches branches; // les branches - SParametresNoeuds noeuds; // les noeuds - SParametresExtrLibres extrLibres; // les extremites libres - }; - //-----------FIN RUBRIQUE GEOMETRIE-RESEAU------------------------- - - //-----------RUBRIQUE CONFLUENTS------------------------- - // Description d'un confluent - struct SParametresConfluent { - entier nbAffluent; // nombre d'affluent = 3 - chaine nom; // nom du confluent - vreel abscisses; // les 3 abscisses du confluent - vreel ordonnees; // les 3 ordonnees du confluent - vreel angles; // les 3 angles du confluent - }; - typedef sequence <SParametresConfluent> VSParametresConfluent; - - // Param\xE8tres confluents - struct SParametresConfluents { - entier nbConfluents; // nombre de confluents - VSParametresConfluent confluents; // les confluents - }; - //-----------FIN RUBRIQUE CONFLUENTS------------------------- - - //-----------RUBRIQUE PLANIMETRAGE ET MAILLAGE----------- - // Param\xE8tres Planimetrage - struct SParametresPlanim { - entier nbPas; // nombre de pas de planimetrage - entier nbZones; // nombre de zones de planimetrage - vreel valeursPas; // valeurs du pas (1 par zone) - ventier num1erProf; // numeros du premier profil (1 par zone) - ventier numDerProf; // numeros du dernier profil (1 par zone) - }; - - // Param\xE8tres Maillage par Clavier - struct SParametresMaillageClavier { - entier nbSections; // nombre de sections de calcul SI methodeMaillage==Section par Section - ventier numSection; // les numeros des sections de calcul SI methodeMaillage==Section par Section - ventier branchesSection; // les branches des sections de calculs SI methodeMaillage==Section par Section - vreel absSection; // les abscisses des sections de calculs SI methodeMaillage==Section par Section - entier nbPlages; // nombre de plages de discretisation SI methodeMaillage==Par serie dont les profils - ventier num1erProfPlage; // les numeros des premiers profil de la plage SI methodeMaillage==Par serie dont les profils - ventier numDerProfPlage; // les numeros des derniers profil de la plage SI methodeMaillage==Par serie dont les profils - vreel pasEspacePlage; // les pas d'espace de la plage SI methodeMaillage==Par serie dont les profils - entier nbZones; // nombre de zones de discretisation SI methodeMaillage==Par serie - ventier numBrancheZone; // les numeros de branche de zone SI methodeMaillage==Par serie - vreel absDebutZone; // les abscisses de debut de zone SI methodeMaillage==Par serie - vreel absFinZone; // les abscisses de fin de zone SI methodeMaillage==Par serie - ventier nbSectionZone; // les nombres de sections de la zone SI methodeMaillage==Par serie - }; - - // Param\xE8tres Maillage - struct SParametresMaillage { - entier modeSaisie; // mode de saisie du maillage : - // 1-> entree par clavier, 2-> entree par fichier - chaine fichMaillage; // nom du fichier du maillage - booleen sauvMaillage; // fichier de sauvegarde du maillage - chaine fichSauvMaillage; // nom du fichier de sauvegarde du maillage - SParametresMaillageClavier maillageClavier; // le maillage decris dans le fichier cas - }; - - // Param\xE8tres Planimetrage et Maillage - struct SParametresPlanimMaillage { - entier methodeMaillage; // methode de calcul du maillage : 1-> aux profils, 2-> par serie, - // 3-> section par section, 4->repris de la ligne d'eau initiales, - // 5-> par serie dont les profils - SParametresPlanim planim; // le planimetrage - SParametresMaillage maillage; // le maillage - }; - //-----------FIN RUBRIQUE PLANIMETRAGE ET MAILLAGE----------- - - //-----------RUBRIQUE SINGULARITE (BARRAGE-SEUIL) ------------ - // Param\xE8tres barrage principal - struct SParametresBarrPrincip { - entier numBranche; // numero branche du barrage principal SI calcul onde de submersion == Vrai - reel abscisse; // abscisse du barrage principal SI calcul onde de submersion == Vrai - entier typeRupture; // type de rupture du barrage principal SI calcul onde de submersion == Vrai - // 1->rupture progressive, 2->rupture instantanee - reel coteCrete; // cote de crete du barrage principal SI calcul onde de submersion == Vrai - // SI rupture instantanee == Vrai - }; - - // Param\xE8tres seuil - struct SParametresSeuil { - chaine nom; // nom du seuil - entier type; // type du seuil : 1->Zam=f(Zav,Q), 2->Zam=f(Q), - // 3->Profil de crete, 4->Zam=f(Cote Crete , Coeff Debit), - // 5->Zam=f(t), 6->Q=f(Zam), 7->Q=f(Zav), 8->Vanne - entier numBranche; // numero de branche du seuil - reel abscisse; // abscisse du seuil - reel coteCrete; // cote de crete du seuil - reel coteCreteMoy; // cote de crete moyenne - reel coteRupture; // cote de rupture du seuil - reel coeffDebit; // coefficient de debit du seuil - reel largVanne; // largeur de la vanne du seuil - entier numLoi; // numero de la loi de seuil - entier nbPtLoiSeuil; // nombre de points de la loi de seuil - vreel abscTravCrete;// abscisse en travers crete - vreel cotesCrete; // cotes de la crete - entier epaisseur; // epaisseur seuil - reel gradient; // gradient de descente - }; - typedef sequence <SParametresSeuil> VSParametresSeuil; - - // Param\xE8tres pertes de charges - struct SParametresPerteCharge { - entier nbPerteCharge; // nombre de pertes de charge singulieres - ventier numBranche; // numeros de branche des pertes de charges singulieres - vreel abscisses; // abscisses des pertes de charges singulieres - vreel coefficients; // coefficients des pertes de charges singulieres - }; - - // Param\xE8tres singularite (barrage-seuil) - struct SParametresSingularite { - entier nbSeuils; // nombre de seuils - SParametresBarrPrincip barragePrincipal; // le barrage principal Si == calcul onde de submersion == Vrai - VSParametresSeuil seuils; // les seuils - SParametresPerteCharge pertesCharges; // les pertes de charges - }; - //-----------FIN RUBRIQUE SINGULARITE (BARRAGE-SEUIL) ------------ - - //-----------RUBRIQUE CASIER ----------------------------------------------- - // Param\xE8tres liaisons - struct SParametresLiaisons { - entier nbLiaisons; // nombre de liaisons - ventier types; // liaison type : 1->liaison seuil, 2-> liaison chenal, 3-> liaison siphon, 4-> liaison orifice - ventier nature; // liaison nature : 1->"liaison rivi\xE8re-casier", 2->"liaison casier-casier" - vreel cote; // liaison cote (valeur de la cote de chaques liaisons ) - vreel largeur; // liaison largeur (largeur pour les liaisons de type chenal ou seuil ou orifice, -1 pour un siphon) - vreel longueur; // liaison longueur (longueur pour les liaisons de type chenal ou siphon, -1 pour un seuil ou un orifice) - vreel rugosite; // liaison rugosite (coefficients de Strickler pour les liaisons de type chenal, - // -1 pour les seuils et siphons et orifice) - vreel section; // liaison section (sections transverse pour les liaisons de type siphon ou orifice, -1 pour les seuils - // et chenals) - vreel coefPerteCharge; // liaison coefficient perte de charge (coefficients pertes de charge pour les liaisons de - // type siphon, -1 pour les seuils et chenals) - vreel coefDebitSeuil; // liaison coefficient de debit (coefficients de d\xE9bit pour les liaisons de type seuil ou orifice, - // -1 pour les siphons et chenals) - vreel coefActivation; // liaison coefficient d'activation (coefficients d'activation pour les liaisons de type seuil, - // -1 pour les siphons et chenals et orifices) - vreel coefDebitOrifice; // liaison coefficient de debit orifice (coefficient de debit pour les liaisons de type orifice, - // -1 pour les autres) - ventier typeOrifice; // liaison type orifice : 1->d\xE9bit possible dans les 2 sens, 2-> d\xE9bit possible uiniquement dans le sens casier origine vers casier fin, - // 3-> d\xE9bit possible uniquement dans le sens inverse. Type de l'orifice pour les liaisons de type orifice, - // -1 pour les autres. - ventier numCasierOrigine; // liaison numero casier origine (les num\xE9ros du casier amont pour une liaison de type "casier-casier" - // ou les num\xE9ros du casier associ\xE9 pour une liaison "rivi\xE8re-casier") - ventier numCasierFin; // liaison numero casier fin (les num\xE9ros du casier aval pour une liaison de type "casier-casier" - // ou -1 pour les liaisons "rivi\xE8re-casier") - ventier numBiefAssocie; // liaison numero du bief associe (les num\xE9ros du bief auquel est reli\xE9 le casier dans le cas d'une - // liaison "rivi\xE8re-casier" ou -1 pour les liaisons de type "casier-casier") - vreel abscBief; // liaison abscisse correspondante (les abscisses du bief \xE0 laquelle est reli\xE9e le casier dans le cas - // d'une liaison "rivi\xE8re-casier" ou ou -1 pour les liaisons de type "casier-casier") - }; - - // Param\xE8tres casiers - struct SParametresCasier { - entier nbCasiers; // nombre de casiers - ventier optionPlanimetrage; // option de planimetrage : 1-> planim\xE9trage manuel, 2-> planim\xE9trage automatique - ventier optionCalcul; // option de calcul (si optionPlanimetrage == 2) : 1-> planim\xE9trage \xE0 surface constante, - // 2-> surface d\xE9pendant de la cote - chaine fichierGeomCasiers; // fichier geometrie casiers - vreel cotesInitiale; // casiers cote initiale (valeurs des cotes initiles de chaque casier) - vreel pasPlanimetrage; // casiers pas de planimetrage (si optionPlanimetrage == 2) - ventier nbCotesPlanimetrage; // casiers nombre de cotes de planimetrage (si optionPlanimetrage == 2) - SParametresLiaisons liaisons; // param\xE8tres liaisons - }; - - - //-----------FIN RUBRIQUE CASIER ------------------------------------------- - - //-----------RUBRIQUE APPORTS ET DEVERSOIRS ---------------------- - // Param\xE8tres debits d'apports - struct SParametresQApport { - entier nbQApport; // nombre de debits d'apports - vchaine noms; // nom des apports - ventier numBranche; // numeros de branche des apports - vreel abscisses; // abscisses des apports - vreel longueurs; // longueurs des apports - ventier numLoi; // numeros de loi des apports - }; - - // Param\xE8tres deversoirs - struct SParametresDeversoirsV5P2 { - chaine nom; // nom du deversoir - entier type; // type du deversoir : 1->"Cote Crete , Coeff Debit", 2->"Loi de seuil" - entier numBranche; // numero de branche du deversoir - reel abscisse; // abscisse du deversoir - reel longueur; // longueur du deversoir - reel coteCrete; // cote crete du deversoir Si type=="Cote Crete , Coeff Debit" - reel coeffDebit; // coefficient de debit du deversoir Si type=="Cote Crete , Coeff Debit" - entier numLoi; // numero de la loi du deversoir Si type==Loi de seuil - }; - typedef sequence <SParametresDeversoirsV5P2> VSParametresDeversoirsV5P2; - - - // Param\xE8tres deversoirs lateraux - struct SParametresDeversLateraux { - entier nbDeversoirs; // nombre de deversoirs - vchaine nom; // nom du deversoir - ventier type; // type du deversoir : 1->"Cote Crete , Coeff Debit", 2->"Loi de seuil" - ventier numBranche; // numero de branche du deversoir - vreel abscisse; // abscisse du deversoir - vreel longueur; // longueur du deversoir - vreel coteCrete; // cote crete du deversoir Si type=="Cote Crete , Coeff Debit" - vreel coeffDebit; // coefficient de debit du deversoir Si type=="Cote Crete , Coeff Debit" - ventier numLoi; // numero de la loi du deversoir Si type==Loi de seuil - VSParametresDeversoirsV5P2 deversoirsV5P2; // les deversoirs avec noyau V5P2 - }; - - // Param\xE8tres apports de pluies dans les casiers - struct SParametresApportCasier { - entier nbApportPluie; // nombre d'apport de pluie - ventier numCasier; // numero du casier associe (les num\xE9ros du casier associer) - ventier numLoi; // numero de la loi associee (les num\xE9ros de la loi de type Hydrogramme) - }; - - // Param\xE8tres apports et deversoirs - struct SParametresApporDeversoirs { - SParametresQApport debitsApports; // les debits d'apports - SParametresDeversLateraux deversLate; // les deversoirs lateraux - SParametresApportCasier apportCasier; // les apports de pluies dans les casiers - }; - //-----------FIN RUBRIQUE APPORTS ET DEVERSOIRS ---------------------- - - //-----------RUBRIQUE CALAGE ----------------------------------------- - // Param\xE8tres frottement - struct SParametresFrottement { - entier loi; // loi de frottement : 1->STRICKLER, 2->CHEZY, - // 3->COLEBROOK, 4->BAZIN - entier nbZone; // nombre de zone de frottement - ventier numBranche; // numeros de branche des zones de frottement - vreel absDebZone; // abscisse de debut des zones de frottement - vreel absFinZone; // abscisse de fin des zones de frottement - vreel coefLitMin; // valeurs du coefficient du lit mineur - vreel coefLitMaj; // valeurs du coefficient du lit majeur - }; - - // Param\xE8tres zone de stockage - struct SParametresZoneStockage { - entier nbProfils; // nombre de profils comportant des zones de stockage - ventier numProfil; // numeros des profils comportant des zones de stockage - vreel limGauchLitMaj; // limite gauche lit majeur - vreel limDroitLitMaj; // limite droite lit majeur - }; - - // Param\xE8tres calage - struct SParametresCalage { - SParametresFrottement frottement; // les frottements - SParametresZoneStockage zoneStockage; // les zones de stockage - }; - //-----------FIN RUBRIQUE CALAGE ----------------------------------------- - - //-----------RUBRIQUE LOIS HYDRAULIQUES----------------------------------- - // Param\xE8tres donnees de la loi - struct SParametresDonneesLoi { - entier modeEntree; // mode d'entree : 1->"entr\xE9e par fichier", 2->"entr\xE9e par clavier" - chaine fichier; // nom du fichier Si modeEntree=="entr\xE9e par fichier" - entier uniteTps; // unite de temps : 1->seconde, 2->minute, 3->heure, 4->jour Si modeEntree=="entr\xE9e par clavier" - entier nbPoints; // nombre de points Si modeEntree=="entr\xE9e par clavier" - vreel tps; // les temps de la loi Si modeEntree=="entr\xE9e par clavier" - vreel cote; // les cotes de la loi Si modeEntree=="entr\xE9e par clavier" - vreel cote2; // les cotes de la loi Si modeEntree=="entr\xE9e par clavier" et type de loi ==5 ou 6 - vreel debit; // les debits de la loi Si modeEntree=="entr\xE9e par clavier" - entier nbDebitsDifferents; // le nombre de debits different Si "=="entr\xE9e par clavier" et type de loi ==5 - }; - - // Param\xE8tres loi - struct SParametresLoi { - chaine nom; // nom de la loi - entier type; // type de la loi : 1->"HYDROGRAMME Q(T)", 2->"LIMNIGRAMME Z(T)", - // 3->"LIMNHYDROGRAMME Z,Q(T)", 4->"COURBE DE TARAGE Z=f(Q)", 5->"COURBE DE TARAGE Q=f(Z)", - // 5->"SEUIL Zam=f(Zav,Q)", 6->"OUVERTURE VANNE Zinf,Zsup=f(T)" - SParametresDonneesLoi donnees; // les donnees de la loi - }; - typedef sequence <SParametresLoi> VSParametresLoi; - - // Param\xE8tres lois hydrauliques - struct SParametresLoisHydrau { - entier nb; // nombre de lois hydrauliques - VSParametresLoi lois; // les lois - }; - //-----------FIN RUBRIQUE LOIS HYDRAULIQUES----------------------------------- - - //-----------RUBRIQUE CONDITIONS INITIALES----------------------------------- - // Param\xE8tres reprise etude - struct SParametresReprEtude { - booleen repriseCalcul; // reprise de calcul - chaine fichRepriseLec; // nom du fichier de reprise en lecture - chaine formatBinFich; // format binaire du fichier de reprise en lecture - // STD->standard, IBM, I3E->IEEE - }; - - // Param\xE8tres ligne d'eau initiale - struct SParametresLigEau { - booleen LigEauInit; // presence ligne d'eau initiale - entier modeEntree; // mode d'entree de la ligne d'eau : 1->"entr\xE9e par fichier", 2->"entr\xE9e par clavier" - chaine fichLigEau; // nom du fichier ligne d'eau initiale Si modeEntree==1 - entier formatFichLig; // format du fichier ligne d'eau : 1->OPTHYCA, 2->LIDOP Si modeEntree==1 - entier nbPts; // nombre de points decrivant la ligne d'eau Si modeEntree==2 - ventier branche; // numeros de branches de la ligne d'eau Si modeEntree==2 - vreel abscisse; // abscisse de la ligne d'eau Si modeEntree==2 - vreel cote; // cote de la ligne d'eau Si modeEntree==2 - vreel debit; // debit de la ligne d'eau Si modeEntree==2 - vreel coefMin; // coefficient de frottement lit Mineur de la ligne d'eau Si modeEntree==2 - vreel coefMaj; // coefficient de frottement lit Majeur de la ligne d'eau Si modeEntree==2 - - }; - - // Param\xE8tres zones seches - struct SParametresZoneSeche { - entier nb; // nombre de zones seches - ventier branche; // numeros de branches des zones seches - vreel absDebut; // abscisse de debut des zones seches - vreel absFin; // abscisse de fin des zones seches - }; - - // Param\xE8tres conditions initiales - struct SParametresCondInit { - SParametresReprEtude repriseEtude; // reprise etude - SParametresLigEau ligneEau; // ligne d'eau initiale - SParametresZoneSeche zonesSeches; // les zones seches - }; - //-----------FIN RUBRIQUE CONDITIONS INITIALES----------------------------------- - - //-----------RUBRIQUE TRACEURS----------------------------------- - - - // Parametres de convection et diffusion des traceurs - struct SParametresConvecDiffu { - vbooleen convectionTraceurs; // convection des traceurs - entier optionConvection; // option de convection pour les traceurs : option 2->"Convection faible, non conservatrice (HYP1FA)",4->"Convection faible, conservatrice" ,5->"Volumes finis" - entier ordreSchemaConvec; // ordre du schema de convection volumes finis - reel paramW; // parametre W du schema de convection volumes finis - booleen LimitPente; // limiteur de pente du schema volumes finis - vbooleen diffusionTraceurs; // diffusion des traceurs - entier optionCalculDiffusion; // option de calcul de la diffusion pour les traceurs : option 1->forme K=C1.U+C2, 2->formule d'Isawa & Aga - reel coeffDiffusion1; // coefficient de diffusion 1 pour les traceurs - reel coeffDiffusion2; // coefficient de diffusion 2 pour les traceurs - }; - - // Parametres num\xE9riques de la qualit\xE9 d'eau - struct SParametresNumQualiteEau { - entier modeleQualiteEau; // type de la loi : 1->"AUCUN_MODELE", 2->"O2", - // 3->"BIOMASS", 4->"EUTRO", 5->"MICROPOL", - // 6->"THERMIC" - chaine fichParamPhysiqueTracer; // Nom du fichier des parametres physiques pour la qualite d'eau - chaine fichMeteoTracer; // Nom du fichier meteo pour la qualite d'eau - entier frequenceCouplHydroTracer; // frequence de couplage entre hydraulique et Tracer - - }; - - - - // Parametres d'impression de la qualit\xE9 d'eau - struct SParametresImpressResultTracer { - chaine fichListTracer; // nom du fichier listing tracer - booleen concentInit; // impression des concentrations initiales - booleen loiTracer; // impression des lois tracer - booleen concentrations; // impression des concentrations - booleen bilanTracer; // impression du bilan Tracer - chaine fichResultTracer; // nom du fichier resultat Tracer - entier formatFichResultat; // format du fichier resultat tracer 1->RUBENS, 2->OPTHYCA - }; - - - - // Param\xE8tres conditions limites Tracer - struct SParametresCondLimTracer { - ventier typeCondLimTracer; // type de condition limite pour chaque extr\xE9mit\xE9 libre: 1->Neumann, 2->Dirichlet - ventier numLoiCondLimTracer; // numero de la loi tracer pour chaque extr\xE9mit\xE9 libre - - }; - - // Param\xE8tres concentrations - struct SParametresConcentrations { - vreel concentrations; // concentrations pour chaque tracer - }; - - typedef sequence <SParametresConcentrations> VSParametresConcentrations; - - // Param\xE8tres concentrations initiales Tracer - struct SParametresConcInitTracer { - booleen presenceConcInit; // presence des concentrations initiales - entier modeEntree; // mode d'entree des concentrations initiales Tracer : 1->"entr\xE9e par fichier", 2->"entr\xE9e par clavier" - chaine fichConcInit; // nom du fichier des concentrations initiales Tracer Si modeEntree==1 (format OPTHYCA) - entier nbPts; // nombre de points decrivant des concentrations initiales Tracer Si modeEntree==2 - ventier branche; // numeros de branches des concentrations initiales Tracer Si modeEntree==2 - vreel abscisse; // abscisses des concentrations initiales Tracer Si modeEntree==2 - VSParametresConcentrations concentrations; //concentrations initiales Tracer Si modeEntree==2 - }; - - - - // Param\xE8tres sources de traceurs - struct SParametresSourcesTraceurs { - entier nbSources; // nombre de sources de traceurs - vchaine noms; // nom des sources - ventier typeSources; // type des sources - ventier numBranche; // numeros de branche des sources - vreel abscisses; // abscisses des sources - vreel longueurs; // longueurs des sources - ventier numLoi; // numeros de loi tracer pour les sources - }; - - - // Param\xE8tres d'une loi Tracer - struct SParametresLoiTracer { - chaine nom; // nom de la loi - entier modeEntree; // mode d'entree : 1->"entr\xE9e par fichier", 2->"entr\xE9e par clavier" - chaine fichier; // nom du fichier Si modeEntree=="entr\xE9e par fichier" - entier uniteTps; // unite de temps : 1->seconde, 2->minute, 3->heure, 4->jour Si modeEntree=="entr\xE9e par clavier" - entier nbPoints; // nombre de points Si modeEntree=="entr\xE9e par clavier" - vreel tps; // les temps de la loi Si modeEntree=="entr\xE9e par clavier" - VSParametresConcentrations concentrations; // les concentrations de la loi pour chaque traceur et chaque point Si modeEntree=="entr\xE9e par clavier" - - }; - typedef sequence <SParametresLoiTracer> VSParametresLoiTracer; - - // Param\xE8tres des lois Tracer - struct SParametresLoisTracer { - entier nbLoisTracer; // nombre de lois Tracer - VSParametresLoiTracer loisTracer; // les lois Tracer - }; - - // Parametres Traceur - struct SParametresTraceur { - booleen presenceTraceurs; // presence de traceurs - entier nbTraceur; // nombre de traceur - SParametresConvecDiffu parametresConvecDiffu; // Parametres de convection et diffusion des traceurs - SParametresNumQualiteEau parametresNumQualiteEau; // Parametres num\xE9riques de la qualit\xE9 d'eau - SParametresImpressResultTracer parametresImpressTracer; // Parametres d'impression et de resultat de la qualit\xE9 d'ea - SParametresCondLimTracer parametresCondLimTracer; // Param\xE8tres condition limite Tracer - SParametresConcInitTracer parametresConcInitTracer; // Param\xE8tres concentrations initiales Tracer - SParametresSourcesTraceurs parametresSourcesTraceurs; // Param\xE8tres sources de traceurs - SParametresLoisTracer parametresLoisTracer; // Param\xE8tres des lois Tracer - }; - - //-----------FIN RUBRIQUE TRACEURS----------------------------------- - - //-----------RUBRIQUE IMPRESSIONS - RESULTATS----------------------------------- - // Param\xE8tres impressions - struct SParametresImpress { - booleen geometrie; // impression de la geometrie - booleen planimetrage; // impression du planimetrage - booleen reseau; // impression du reseau - booleen loiHydrau; // impression des lois hydrauliques - booleen ligneEauInit; // impression de la ligne d'eau initiale - booleen calcul; // impression du calcul - }; - - // Param\xE8tres pas de stockage et impression - struct SParametresPasStock { - entier premPasTpsStock; // premier pas de temps a stocker - entier pasStock; // pas de stockage - entier pasImpression; // pas d'impression - }; - - // Param\xE8tres resultats - struct SParametresResult { - chaine fichResultat; // nom du fichier resultat - chaine fichResultat2; // nom du fichier resultat - chaine formatBinFich; // format binaire du fichier resultat - // STD->standard, IBM, I3E->IEEE - entier postProcesseur; // post-processeur : 1->RUBENS, 2->OPTHYCA - }; - - // Param\xE8tres listing - struct SParametresListing { - chaine fichListing; // nom du fichier listing - }; - - // Param\xE8tres fichier reprise en ecriture - struct SParametresFichReprise { - chaine fichRepriseEcr; // nom du fichier de reprise en ecriture - chaine formatBinFich; // format binaire du fichier de reprise en ecriture - // STD->standard, IBM, I3E->IEEE - }; - - // Param\xE8tres rubens - struct SParametresRubens { - reel ecartInterBranch; // ecart entre branche - }; - - // Param\xE8tres stockage - struct SParametresStockage { - entier option; // option de stockage : 1->"Toutes les sections", - // 2->"A certains sites" - entier nbSite; // nombre de sites Si option==2 - ventier branche; // numeros de branches des sites Si option==2 - vreel abscisse; // abscisse de branches des sites Si option==2 - }; - - // Param\xE8tres noms fichiers resultats casiers - struct SParametresFichResCasier { - chaine resultatCasier; // fichier resultats casiers - chaine listingCasier; // fichier listing casiers - chaine resultatLiaison; // fichier resultats liaisons - chaine listingLiaison; // fichier listing liaisons - }; - - // Param\xE8tres impressions - resultats - struct SParametresImpressResult { - chaine titreCalcul; // titre du calcul - SParametresImpress impression; // impression - SParametresPasStock pasStockage; // pas de stockage et impression - SParametresResult resultats; // resultat - SParametresListing listing; // listing - SParametresFichReprise fichReprise; // fichier reprise en ecriture - SParametresRubens rubens; // Rubens - SParametresStockage stockage; // stockage - SParametresFichResCasier casier; // noms fichiers resultats casiers - }; - //-----------FIN RUBRIQUE IMPRESSIONS - RESULTATS----------------------------------- - - //-----------RUBRIQUE VARIABLES CALCULEES----------------------------------- - // Param\xE8tres variables calculees - struct SParametresVarCalc { - vbooleen varCalculees; // les variables a calculer - /* - booleen largMirLiMin; // Largeur au miroir lit mineur - booleen largMirLiMaj; // Largeur au miroir lit majeur - booleen largMirZoStoc; // Largeur au miroir zone de stockage - booleen periMouLiMin; // perimetre mouille lit mineur - booleen periMouLiMaj; // perimetre mouille lit majeur - booleen rayHydrLiMin; // Rayon hydraulique lit mineur - booleen rayHydrLiMaj; // Rayon hydraulique lit majeur - booleen vitLiMin; // Vitesse dans le lit mineur - booleen vitLiMaj; // Vitesse dans le lit majeur - booleen contraintFon; // Contrainte au fond - booleen hautEau; // Hauteur d'eau - booleen hautEauMoy; // Hauteur d'eau moyenne - booleen QLiMajGauch; // Debit lit majeur gauche - booleen QLiMajDroit; // Debit lit majeur droit - booleen chargeHydr; // Charge hydraulique - */ - }; - //-----------FIN RUBRIQUE VARIABLES CALCULEES----------------------------------- - - //-----------RUBRIQUE VARIABLES STOCKEES----------------------------------- - // Param\xE8tres variables stockees - struct SParametresVarStock { - vbooleen varStockees; // les variables a stocker - /* - booleen coteFond; // Cote du fond 1 - booleen coteRivGauch; // Cote rive gauche 2 - booleen coteRivDroit; // Cote rive droite 3 - booleen frotLiMin; // Frottement lit mineur 4 - booleen frotLiMaj; // Frottement lit majeur 5 - booleen coteEau; // Cote de l'eau 6 - booleen QLiMin; // Debit lit mineur 7 - booleen QLiMaj; // Debit lit majeur 8 - booleen secMouLiMin; // Section mouillee lit mineur 9 - booleen secMouLiMaj; // Section mouillee lit majeur 10 - booleen nbFroude; // Nombre de Froude 11 - booleen betaDebord; // Coefficient Beta de la formule de Debord 12 - booleen largMirLiMin; // Largeur au miroir lit mineur 13 - booleen largMirLiMaj; // Largeur au miroir lit majeur 14 - booleen largMirZoStoc; // Largeur au miroir zone de stockage 15 - booleen periMouLiMin; // perimetre mouille lit mineur 16 - booleen periMouLiMaj; // perimetre mouille lit majeur 17 - booleen rayHydrLiMin; // Rayon hydraulique lit mineur 18 - booleen rayHydrLiMaj; // Rayon hydraulique lit majeur 19 - booleen vitLiMin; // Vitesse dans le lit mineur 20 - booleen vitLiMaj; // Vitesse dans le lit majeur 21 - booleen contraintFon; // Contrainte au fond 22 - booleen hautEau; // Hauteur d'eau 23 - booleen hautEauMoy; // Hauteur d'eau moyenne 24 - booleen QLiMajGauch; // Debit lit majeur gauche 25 - booleen QLiMajDroit; // Debit lit majeur droit 26 - booleen secMouZoStoc; // Section mouillee des zones de stockage 27 - booleen volLiActif; // Volume du lit actif 28 - booleen volZoStoc; // Volume des zones de stockage 29 - booleen chargeHydr; // Charge hydraulique 30 - booleen coteMaxSimu; // Cote maximale au cours de la simulation 31 - booleen tpsObtCoteMax; // Temps d'obtention de la cote maximale 32 - booleen vitCoteMax; // Vitesse a la cote maximale 33 - booleen coteMinSimu; // Cote minimale au cours de la simulation 34 - booleen tpsObtCoteMin; // Temps d'obtention de la cote minimale 35 - booleen vitLiMinMin; // Vitesse lit mineur minimale 36 - booleen vitLiMinMax; // Vitesse lit mineur maximale 37 - booleen largMirMax; // Largeur au miroir maximale 38 - booleen tpsArrivOnde; // Temps d arrivee de l'onde 39 - booleen QMax; // Debit maximal 40 - booleen tpsObtQMax; // Temps d obtention du debit maximal 41 - booleen energieMax; // Energie maximale 42 - */ - }; - //-----------FIN RUBRIQUE VARIABLES STOCKEES----------------------------------- - - //-----------RUBRIQUE CALAGE AUTOMATIQUE----------------------------------- - - // Parametres g\xE9n\xE9raux pour le calage automatique - struct SParametresParamsCalageAuto { - booleen modeCalageAuto; // Calcul lanc\xE9 en mode calage si true. - reel pasGradient; // Le pas du gradient de calcul. - entier nbMaxIterations; // Nombre maxi d'it\xE9rations. - entier typeLit; // 1:Lit mineur, 2:Lit majeur. - reel precision; // Pr\xE9cision pour la convergence du calcul. - reel roInit; // Ro initial. - entier methOptimisation; // La m\xE9thode d'optimisation. 1:Descente optimale, 2:Casier Newton, 3:Algo g\xE9n\xE9tique. - chaine nomFichResult; // Nom du fichier r\xE9sultat de calage. - chaine nomFichListing; // Nom du fichier listing de calage. - }; - - // Zones de frottement \xE0 caler - struct SParametresZonesCalageAuto { - entier nbZones; // Nombre de zones \xE0 caler. - vreel absDebZone; // Abscisses de d\xE9but des zones. - vreel absFinZone; // Abscisses de fin des zones. - vreel coefLitMin; // valeur des coefficients du lit mineur. - vreel coefLitMaj; // valeur des coefficients du lit majeur. - }; - - // D\xE9finition d'une crue pour le calage - struct SParametresCrueCalageAuto { - reel debitAmont; // Valeur du d\xE9bit amont du bief. - reel coteAval; // Valeur de la cote aval du bief. - entier nbMesures; // Nombre de mesures relev\xE9es. - vreel absMesures; // Abscisses des mesures. - vreel coteMesures; // Valeurs des mesures. - vreel pondMesures; // Pond\xE9rations pour les mesures. - entier nbApports; // Nombre d'apports sur le bief. - vreel absApports; // Abscisses des apports. - vreel debitApports; // Valeurs des apports. - }; - typedef sequence <SParametresCrueCalageAuto> VSParametresCrueCalageAuto; - - // Les crues de calage - struct SParametresCruesCalageAuto { - entier nbCrues; // Le nombre de crue. - VSParametresCrueCalageAuto crues; // La d\xE9finition des crues. - }; - - // Param\xE8tres calage automatique - struct SParametresCalageAuto { - SParametresParamsCalageAuto parametres; // Les parametres pour le calage auto. - SParametresZonesCalageAuto zones; // Les zones de frottement pour le calage auto. - SParametresCruesCalageAuto crues; // Les crues pour le calage auto. - }; - - //-----------FIN RUBRIQUE CALAGE AUTOMATIQUE----------------------------------- - - //-----------CONTENU DU FICHIER CAS MASCARET ------------------------------------------- - // Param\xE8tres du fichier cas - struct SParametresCAS { - SParametresGen parametresGen; // parametres generaux - SParametresModelPhy parametresModelPhy; // parametres modelisation physiques - SParametresNum parametresNum; // parametres num\xE9riques - SParametresTemp parametresTemp; // parametres temporels - SParametresGeoReseau parametresGeoReseau; // parametres geometrie-reseau - SParametresConfluents parametresConfluents; // parametres confluents - SParametresPlanimMaillage parametresPlanimMaillage; // parametres planimetrage-maillage - SParametresSingularite parametresSingularite; // parametres singularite - SParametresCasier parametresCasier; // parametres casiers - SParametresApporDeversoirs parametresApporDeversoirs; // parametres apports et deversoirs - SParametresCalage parametresCalage; // parametres calage - SParametresLoisHydrau parametresLoisHydrau; // parametres lois hydrauliques - SParametresCondInit parametresCondInit; // parametres conditions initiales - SParametresImpressResult parametresImpressResult; // parametres impression resultat - SParametresVarCalc parametresVarCalc; // parametres variables calculees - SParametresVarStock parametresVarStock; // parametres variables stockees - SParametresCalageAuto parametresCalageAuto; // parametres calage automatique - SParametresTraceur parametresTracer; // parametres de la qualit\xE9 d'eau - - }; - //-----------FIN CONTENU DU FICHIER CAS MASCARET ----------------------------------- - - - //-----------CONTENU DU FICHIER GEOMETRIE ----------------------------------- - // Parametres point d'un profil - struct SParametresPt { - reel x; // abscisse du point - reel y; // ordonnee du point - chaine lit; // le lit auquel appartient le point : "B"->bathy, "T"->topo - }; - typedef sequence <SParametresPt> VSParametresPt; - - // Parametres profil - struct SParametresProfil { - chaine nom; // nom du profil - reel absc; // abscisse utilisateur du profil - VSParametresPt pts; // les points du profil - }; - typedef sequence <SParametresProfil> VSParametresProfil; - - // Parametres bief - struct SParametresBief { - chaine nom; // nom du bief - VSParametresProfil profils; // les profils du bief - }; - typedef sequence <SParametresBief> VSParametresBief; - - struct SParametresGEO { - VSParametresBief biefs; // les biefs du fichier geometrie - }; - //-----------FIN CONTENU DU FICHIER GEOMETRIE ----------------------------------- - - //-----------CONTENU DU FICHIER GEOMETRIE CASIER ----------------------------------- - // Parametres point d'une g\xE9om\xE9trie casier - struct SPtCasier { - reel x; // si format "manuel" cote du casier, si format "automatique" abscisse du point - reel y; // si format "manuel" surface du casier, si format "automatique" ordonnee du point - reel z; // si format "manuel" volume du casier, si format "automatique" hauteur du point - chaine typePoint; // si format "manuel" chaine vide, si format "automatique" : "F"->point fronti\xE8re, "I"->point int\xE9rieur - }; - typedef sequence <SPtCasier> VSPtCasier; - - // G\xE9om\xE9trie d'un casier - struct SGeoCasier { - chaine nom; // nom du casier - VSPtCasier pts; // les points du casier - }; - typedef sequence <SGeoCasier> VSGeoCasier; - - // G\xE9om\xE9trie des casiers - struct SGeoCasiers { - VSGeoCasier casiers; // la g\xE9om\xE9trie de tous les casiers - }; - //-----------FIN CONTENU DU FICHIER GEOMETRIE ----------------------------------- - - //-----------CONTENU DU FICHIER "Fichiercas.txt" -------------------------------- - struct SParametresNCA { - chaine nom; // le nom du fichier cas - }; - //-----------FIN CONTENU DU FICHIER "Fichiercas.txt" ----------------------------------- - - // ++++++++++++++++++++++++++++++++++ Extensions Dodico ++++++++++++++++++++++++++++++++++++ - struct SParametresLaisseLigneEXT { - chaine titre; - reel abscisse; - reel cote; - }; - typedef sequence <SParametresLaisseLigneEXT> VSParametresLaisseLigneEXT; - - struct SParametresEXT { - VSParametresLaisseLigneEXT laisses; - }; - // ++++++++++++++++++++++++++++++++++ fin Extensions Dodico ++++++++++++++++++++++++++++++++ - - // ++++++++++++++++++++++++++++++++++ Taille max des fichiers ++++++++++++++++++++++++++++++ - struct SParametresTailleMaxFichier { - reel maxListingMascaret; - reel maxListingDamocles; - reel maxListingCalage; - reel maxListingTracer; - reel maxResultatRubens; - reel maxResultatOpthyca; - reel maxResultatReprise; - reel maxResultatRubensTracer; - reel maxResultatOpthycaTracer; - }; - // ++++++++++++++++++++++++++++++++++ fin Taille max des fichiers +++++++++++++++++++++++++++ - - // ++++++++++++++++++++++++++++++++++CONTENU DU FICHIER LOI HYDRAULIQUE++++++++++++++++++++++++++++++ - struct SLoiHydraulique { - chaine nom; - vchaine entetesColonnes; - chaine unitee; - vreel x; - vreel y; - vreel z; - }; - typedef sequence <SLoiHydraulique> VSLoiHydraulique; - // ++++++++++++++++++++++++++++++++++ fin fichier loi hydraulique +++++++++++++++++++++++++++ - - // ++++++++++++++++++++++++++++++++++CONTENU DU FICHIER LOI TRACER++++++++++++++++++++++++++++++ - - struct SLoiTracer { - chaine nom; // nom de la loi - vchaine entetesColonnes; - chaine unitee; - vreel tps; // les temps de la loi - vvreel concentrations; // concentration[point de la loi][numero de tracer] les concentrations de la loi pour chaque traceur et chaque point - - }; - typedef sequence <SLoiTracer> VSLoiTracer; - - // ++++++++++++++++++++++++++++++++++CONTENU DU FICHIER METEO TRACER++++++++++++++++++++++++++++++ - - // Parametres meteo du modele de qualit\xE9 d'eau - struct SParamMeteoTracer { - binaire paramMeteoTracer; // contenu du fichier meteo Tracer - }; - - - - // ++++++++++++++++++++++++++++++++++Fichier des param\xE9tres physiques de la qualit\xE9 d'eau ++++++++++++++++++++++++++++++ - - // Parametres Physique du modele de qualit\xE9 d'eau - struct SParamPhysTracer { - chaine nomParamPhys; // nom du parametre physique - reel valeurParamPhys; // valeur du parametre physique - }; - - typedef sequence <SParamPhysTracer> VSParamPhysTracer; - - // ++++++++++++++++++++++++++++++++++ fin fichier loi hydraulique +++++++++++++++++++++++++++ - - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+- FIN ENTREE +-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+ ENTREE-SORTIE +-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -//--------- CONTENU DU FICHIER DE REPRISE ---------------------------------------------- - struct SParametresREP { - binaire contenu; // contenu du fichier texte de reprise - }; - -//--------- FIN CONTENU DU FICHIER DE REPRISE ------------------------------------------ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+ FIN ENTREE-SORTIE +-+-+-+-+-+-+-+-+-+-* - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+- SORTIE +-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -//--------- CONTENU DU FICHIER Resultat FORMAT OPTYCA -------------------- - struct SResultatsVariable { - chaine nomLong; // nom long de la variable - chaine nomCourt; // nom court de la variable - chaine unite; // unite de la variable - entier nbDecimal; // nombre de decimal de la variable - }; - typedef sequence <SResultatsVariable> VSResultatsVariable; - - struct SResultatSection { - vreel valeurs; // les valeurs de toutes les variables r\xE9sultat pour une section donn\xE9e et un temps donn\xE9 - reel absc; // l'abscisse de la section - }; - typedef sequence <SResultatSection> VSResultatSection; - - struct SResultatBief { - VSResultatSection resultatsSection; // les resultats par section pour un bief \xE0 un pas de temps - }; - typedef sequence <SResultatBief> VSResultatBief; - - struct SResultatPasTemps { - VSResultatBief resultatsBief; // les resultats par bief \xE0 un pas de temps - reel t; // le temps - }; - typedef sequence <SResultatPasTemps> VSResultatPasTemps; - - struct SResultatsOPT { - VSResultatsVariable variables; // listes des variables definit en plus du temps, code bief, code section, abscisse - VSResultatPasTemps resultatsPasTemps; // les resultats par pas de temps - - }; - - struct SResultatsTemporelSpatialBief { - vvvreel valeursVariables; // valeursVariables[iVariable][iPasTemps][iSection] - vreel abscissesSections; - }; - typedef sequence <SResultatsTemporelSpatialBief> VSResultatsTemporelSpatialBief; - - struct SResultatsTemporelSpatial { - VSResultatsVariable variables; // listes des variables definit en plus du temps, code bief, code section, abscisse - vreel pasTemps; - VSResultatsTemporelSpatialBief resultatsBiefs; - booleen resultatsLiaison; - booleen resultatsCasier; - booleen resultatsPermanent; - booleen resultatsCalageAuto; - booleen resultatsTracer; - - }; - -//--------- FIN CONTENU DU FICHIER FORMAT OPTYCA ------------------------------ -//++++++++++++++++++++++++++++... [truncated message content] |