From be05b74dc6cd70fc44b6ffa452bf8927a95b061c Mon Sep 17 00:00:00 2001 From: PASCALE NOYRET Date: Tue, 5 Apr 2022 10:34:39 +0200 Subject: [PATCH] ajout du catalogue Vallee version 1 --- testFlask/cata_Vallee.py | 104 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 testFlask/cata_Vallee.py diff --git a/testFlask/cata_Vallee.py b/testFlask/cata_Vallee.py new file mode 100644 index 00000000..988822de --- /dev/null +++ b/testFlask/cata_Vallee.py @@ -0,0 +1,104 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2008-2018 EDF R&D +# +# This file is part of SALOME ADAO module +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +import os +from Accas import OPER, BLOC, FACT, SIMP, ASSD, JDC_CATA, VerifTypeTuple, Matrice, UserASSD +from Extensions.i18n import tr +import types +monFichier = os.path.abspath(__file__) + +JdC = JDC_CATA( + code='Morgane', + fr = "Modèle physique d'une vallée", +) +VERSION_CATALOGUE = 'V_0' + +class vallee(ASSD) : pass +class usine(UserASSD) : pass +class reservoir(UserASSD) : pass + +unitesChute=['hm3','m3'] + +Vallee=OPER(nom="Vallee", sd_prod=vallee, + fr="Elément défini pour éventuellement contenir la définition des vallées de manière autonome. Les contraintes sont définies au niveau de l'élément et doivent donc être répétées si le type est utilisé ailleurs", + Reservoirs=FACT(statut='o', + Reservoir = FACT ( statut ='o', max='**', + NomReservoir = SIMP(statut='o', typ=(reservoir,'createObject'),), + TypeReservoir = SIMP(statut='o', typ= 'TXM', into = ['Lac', 'Eclusee',]), + Volume = SIMP(statut='o', typ= 'R', defaut=0, val_min=0,), + Surface = SIMP(statut='o', typ= 'R'), + CotesVolume = FACT(statut='f', + fr="Si, quelque part dans l'étude (usine ou réservoir), il y a des cotes (ie on travaille en mètres), il faut les cotes volumes car le coeur de calcul travaille en volume", + CoteVolume = FACT (statut='o', max='**', + Cote = SIMP(statut='o', typ='R', defaut=0, val_min=0), + Volume = SIMP(statut='o', typ='R', defaut=0, val_min=0), + Surface = SIMP(statut='o', typ='R', defaut=0, val_min=0), + ), + ), + ), + ), # Reservoirs + + Usines = FACT(statut ='o', + fr="Attention, l'ordre des usines a une importance", + Usine = FACT ( statut ='o', max='**', + fr="Les usines sont des turbines, des pompes ou des non énergétiques. Leur description dépend de ce type", + NomDUsine = SIMP(statut='o', typ=(usine,'createObject'),), + TypeDUsine = SIMP(statut='o', typ= 'TXM', into = ['Turbine', 'Pompe', 'NonEnergetique']), + b_TypeDUsine_Turbine = BLOC( condition = 'TypeDUsine == "Turbine"', + CaracteristiquesTurbine=FACT( statut='o', + fr="Caractéristiques spécifiques aux turbines", DebitMaxPhysique = SIMP(typ='I', statut='o',defaut=100000, val_min=0), + TypeDeDeversement = SIMP(typ= 'TXM', into = ['CapaciteFixe', 'NonAutorise', 'DebitMaxGestion']), + b_Turbine_CapaciteFixe = BLOC( condition = 'TypeDeDeversement == "CapaciteFixe"', + Capacite = SIMP(typ='I', defaut=0, val_min=0), + ), + HauteurChute = SIMP(typ='R', defaut=0, statut='o', val_min=0), + Puissance = SIMP(typ='R', defaut=0,statut='o', val_min=0), + Debit = SIMP(typ='R', defaut=0, statut='o', val_min=0), + BandePrimaire = SIMP(typ='R', defaut=0 , statut='o', val_min=0), + BandeSecondaire = SIMP(typ='R', defaut=0, statut='o', val_min=0), + ), + ), # fin Turbine + b_TypeDUsine_Pompe = BLOC( condition = 'TypeDUsine == "Pompe"', + fr="Caractéristiques spécifiques aux pompes", + CaracteristiquesPompe=FACT( statut='o', + DebitMaxPhysique = SIMP(typ='I', statut='o',defaut=-100000, val_max=0), + HauteurChute = SIMP(typ='R', defaut=0, statut='o', val_min=0), + Puissance = SIMP(typ='R', defaut=0, statut='o', val_min=0), + Debit = SIMP(typ='R', defaut=0, statut='o', val_min=0), + ), + ), # fin Pompe + b_TypeDUsine_NonEnergetique = BLOC( condition = 'TypeDUsine == "NonEnergetique"', + CaracteristiquesNonEnergetique=FACT( statut='o', + DebitMaxPhysique = SIMP(typ='I', statut='o', defaut=100000, val_min=0), + ), + ), + b_TypeDUsine = BLOC( condition = 'TypeDUsine != None', + DelaiAval = SIMP(typ='I', statut='o',defaut=0, val_min=0), + UniteHauteurChute = SIMP(typ="TXM", statut='o', into=unitesChute, defaut="hm3"), + Interpolation = SIMP(typ="TXM", statut='o', into=["EnVolume", "EnCote"], defaut="EnCote"), + ReservoirAmont = SIMP(typ=reservoir,statut='o'), + b_DelaiAval_NonNul = BLOC( condition = "DelaiAval != 0", + ReservoirAval = SIMP(typ=reservoir,statut='o'), + ), + ), # fin bloc commun + ), # fin Usine + + ), # Usines +) -- 2.39.2